package com.tac.dao;

import com.tac.pojo.Product;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

import java.util.List;

public interface ProductDao {

    //添加商品
    Integer insert(Product product);
    //根据id删除商品
    Integer remove(Integer id);
    //修改商品
    Integer updateById(Product product);
    //根据id查询商品
    Product selectById(Integer id);
    //查询所有 按热门排序
    List<Product> selectAll(@Param("page") int page, @Param("limit") int limit);
    //查询总条数
    Integer SelecteNmb();
    //根据分类查询商品不分页 按热门排序
    List<Product> selectAllByCategoryId2(@Param("id") Integer id);
    //根据分类查询商品分页  按热门排序
    List<Product> selectAllByCategoryId(@Param("id") Integer id,@Param("page") int page, @Param("limit") int limit);
    //查询分类总条数
    Integer SelecteNmbByCategory(Integer id);
    //按名称模糊查询商品分页按热门排序
    List<Product> selectByName(@Param("name")String name,@Param("page") int page, @Param("limit") int limit);
    //按名称模糊查询商品数量
    Integer selectByNameAndCount(String name);
    //查询一次热门量加一
    Integer updateHot(String name);
    //添加销量
    Integer updateSalesVolume(Integer pid,Integer salesVolume);
}
